#include "date.h"
#include <gtest/gtest.h>

// Exercise 2.1
// Remove this test after inspecting the output.
// Tests which require manual verification should not be lumped 
// with tests which are automatically verified!
TEST(Date, dateHasUninitialisedState) {  
	Date today;		
	printDate(today);
}

//TEST(Date, validDateCanBeCreated) {  	
//	Date heritage_day(24, September, 2000);			
//	EXPECT_EQ(24, heritage_day.day());
//	EXPECT_EQ(September, heritage_day.month());
//	EXPECT_EQ(2000, heritage_day.year());
//}


// Exercise 2.2
// Supply additional tests for the constructor here, which
// verify that an exception is thrown when an attempt is made
// to construct an invalid date. Think carefully about which
// invalid dates to test.


// Exercise 2.3
//TEST(Date, identicalDatesAreEqual) {
//    Date date_1(1, January, 2000);
//    Date date_2(1, January, 2000);
//
//    EXPECT_TRUE(date_1 == date_2);
//}

// Supply at least three additional tests for 
// the equality operator here, to ensure that
// it is working correctly.


// Exercise 2.4
// Provide tests for a new member function of the Date class 
// which will increase the date by one day.


// Exercise 2.5
// Write tests for the new default constructor and the
// setDefaultDate method.
